package com.example.demoone.kotlin

fun main() {
    // 1. 简化多步计算
    val area = run {
        val width = 10
        val height = 5
        width * height // 返回面积
    }
    println("矩形面积: $area") // 输出: 矩形面积: 50

    // 2. 临时变量隔离
    val result = run {
        // 这里的临时变量不会影响外部
        val a = 5
        val b = 3
        a * b
    }
    // 外部访问不到 a 和 b
    println("结果: $result") // 输出: 结果: 15

    // 3. 安全转换
    val userInput = "123"
    val number = run {
        // 尝试转换为数字
        val parsed = userInput.toIntOrNull()
        parsed ?: 0 // 如果转换失败返回0
    }
    println("数字: $number") // 输出: 数字: 123

    // 4. 对象初始化
    val person = run {
        val name = "小明"
        val age = 12
        val grade = 5

        // 创建描述字符串
        "$name ($age 岁), $grade 年级"
    }
    println(person) // 输出: 小明 (12岁), 5年级
}